home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-09-26 | 2.0 KB | 85 lines | [TEXT/CWIE] |
- unit MyMenus;
-
- interface
-
- uses
- Menus;
-
- procedure SetIDItem (menu, item: integer; s: str255);
- function GetIDItem (menu, item: integer): str255;
- procedure SetItemEnable (mh: menuHandle; item: integer; enable: boolean);
- function GetItemEnable (mh: menuHandle; item: integer): boolean;
- procedure SetIDItemEnable (menu, item: integer; enable: boolean);
- function GetIDItemEnable (menu, item: integer): boolean;
- procedure DotItem (mh: menuHandle; item: integer; dotted: boolean);
- procedure ClearMenuHandle (mh: MenuHandle);
- procedure SafeAppendMenu (mh: MenuHandle; item: Str255);
-
- implementation
-
- function TPbtst(value:longint; bit:integer):Boolean;
- begin
- TPbtst := btst(value, bit);
- end;
-
- procedure ClearMenuHandle (mh: MenuHandle);
- begin
- while (CountMItems(mh) > 0) do begin
- DeleteMenuItem(mh, 1);
- end;
- end;
-
- procedure SafeAppendMenu (mh: MenuHandle; item: Str255);
- begin
- AppendMenu(mh, 'fred');
- SetMenuItemText(mh, CountMItems(mh), item);
- end;
-
- procedure SetIDItem (menu, item: integer; s: str255);
- begin
- SetMenuItemText(GetMenuHandle(menu), item, s);
- end;
-
- function GetIDItem (menu, item: integer): str255;
- var
- s: str255;
- begin
- GetMenuItemText(GetMenuHandle(menu), item, s);
- GetIDItem := s;
- end;
-
- procedure SetItemEnable (mh: menuHandle; item: integer; enable: boolean);
- begin
- if enable then begin
- EnableItem(mh, item);
- end
- else begin
- DisableItem(mh, item);
- end;
- end;
-
- procedure SetIDItemEnable (menu, item: integer; enable: boolean);
- begin
- SetItemEnable(GetMenuHandle(menu), item, enable);
- end;
-
- function GetItemEnable (mh: menuHandle; item: integer): boolean;
- begin
- GetItemEnable := (item > 31) | TPbtst(mh^^.enableFlags, item);
- end;
-
- function GetIDItemEnable (menu, item: integer): boolean;
- begin
- GetIDItemEnable := GetItemEnable(GetMenuHandle(menu), item);
- end;
-
- procedure DotItem (mh: menuHandle; item: integer; dotted: boolean);
- begin
- if dotted then begin
- SetItemMark(mh, item, '•');
- end else begin
- SetItemMark(mh, item, chr(0));
- end;
- end;
-
- end.